#!/bin/bash

# 脚本说明：将项目中所有 bb 开头的文件夹重命名为 bb 开头
# 使用方法：./rename_bb_to_bb.sh

set -e  # 遇到错误立即退出

# 定义颜色输出
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
NC='\033[0m' # No Color

echo -e "${GREEN}开始重命名 bb 开头的文件夹为 bb 开头...${NC}"

# 获取脚本所在目录（项目根目录）
PROJECT_ROOT="$(cd "$(dirname "$0")" && pwd)"
cd "$PROJECT_ROOT"

echo -e "${YELLOW}项目根目录: $PROJECT_ROOT${NC}"

# 用于统计重命名的文件夹数量
count=0

# 查找所有 bb 开头的目录并重命名
# 使用 find 命令，从深层目录开始处理（-depth），避免父目录重命名后影响子目录查找
find . -depth -type d -name "bb*" | while read -r dir; do
    # 获取目录的父路径和目录名
    parent_dir=$(dirname "$dir")
    old_name=$(basename "$dir")
    
    # 将 bb 替换为 bb
    new_name="${old_name/bb/bb}"
    
    # 如果新旧名称相同，跳过
    if [ "$old_name" = "$new_name" ]; then
        continue
    fi
    
    new_path="$parent_dir/$new_name"
    
    # 检查目标目录是否已存在
    if [ -e "$new_path" ]; then
        echo -e "${RED}警告: 目标目录已存在，跳过: $new_path${NC}"
        continue
    fi
    
    # 执行重命名
    echo -e "${GREEN}重命名: $dir -> $new_path${NC}"
    mv "$dir" "$new_path"
    ((count++))
done

echo ""
echo -e "${GREEN}==================================${NC}"
echo -e "${GREEN}重命名完成！共重命名了 $count 个文件夹${NC}"
echo -e "${GREEN}==================================${NC}"
echo ""
echo -e "${YELLOW}提示：此脚本仅重命名文件夹，pom.xml 等配置文件内容未修改${NC}"

